<?php
    /** 获取请求参数 */
    namespace app\index\controller;

    use think\Request;
    class Hello6
    {
        public function hello(Request $request)
        {
            echo '请求方法：' . $request->method() . '<br>';
            echo '资源类型：' . $request->type() . '<br>';
            echo '访问IP：' . $request->ip() . '<br>';
            echo '是否AJax请求' . var_export($request->isAjax(),true) . '<br>';
            echo '请求参数：';
            dump($request->param());
            echo '仅包含name';
            dump($request->only(['name']));
            echo '排除name';
            dump($request->except(['name']));
        }

        // 获取URL信息
        public function index(Request $request, $name = 'World')
        {
            // 获取当前域名
            echo '当前域名：' . $request->domain() . '<br>';
            // 获取当前入口文件
            echo '入口文件：' . $request->baseFile() . '<br>';
            // 获取当前url地址，不含域名
            echo 'url:' . $request->url() . '<br>';
            // 获取包含域名的完整url地址
            echo '完整url：' . $request->url(TRUE) . '<br>';
            // 获取当前URL地址 不含QUERY_STRING
            echo 'url without query: ' . $request->baseUrl() . '<br/>';
            // 获取URL访问的ROOT地址
            echo 'root:' . $request->root() . '<br/>';
            // 获取URL访问的ROOT地址
            echo 'root with domain: ' . $request->root(true) . '<br/>';
            // 获取URL地址中的PATH_INFO信息
            echo 'pathinfo: ' . $request->pathinfo() . '<br/>';
            // 获取URL地址中的PATH_INFO信息 不含后缀
            echo 'pathinfo: ' . $request->path() . '<br/>';
            // 获取URL地址中的后缀信息
            echo 'ext: ' . $request->ext() . '<br/>';

            return 'Hello,' . $name . '！';
        }

        // 获取当前模块/控制器/操作信息
        public function getinfo(Request $request, $name = 'World')
        {
            echo '模块：' . $request->module();
            echo '<br>控制器：' . $request->controller();
            echo '<br>操作：' . $request->action();
        }

        // 获取路由和调度信息
        public function getrouteinfo(Request $request, $name = 'World')
        {
            echo '路由信息：';
            dump($request->routeInfo());
            echo '调度信息：';
            dump($request->dispatch());

            return 'Hello, ' . $name . '!';
        }
    }
?>